In the following, the Windows® brand operating system is used in various examples, although the use of the invention is not restricted to the Windows®-based operating systems. Microsoft® Windows® brand and similar operating systems with graphical user interfaces commonly utilize navigation trees to facilitate access to applications or data. These known navigation trees organize data and/or applications into a hierarchical structure based on a single root with folders or other data structures branching off from the root corresponding to its position in the hierarchy. For example, in previous operating systems like the one illustrated in FIG. 2, a navigation tree is typically rooted in the “Desktop” with structures such as the “My Documents” folder and the “My Computer” structure branching off of the “Desktop.” Other data structures such as “Local Disk (C:)” and “My Pictures” branch off from “My Computer” and “My Documents,” their respective parent structures, in the data hierarchy. Thus, depending on the number of data structures such as physical and virtual folders, and storage devices (e.g., hard drives, optical disks, mass storage devices, removable storage devices, etc.), the navigation tree may be expandable to a significant number of levels, making navigation cumbersome and inefficient.
Navigation trees are often useful in navigating to a particular storage location (e.g., a subfolder or storage drive identified within the navigation tree) without requiring a user to first open each of the parent structures. That is, the user can merely expand the parent nodes to display the sought after storage location, then select the node representative of the sought after location. Navigation trees also facilitate viewing ancestral, descendant, and sibling relationships between various structures that may not have a direct parent-child association. However, with increasing storage capacity in even home computers, having only a single root in a navigation tree may require substantial time and effort to locate or access a particular page or storage location. In many instances, the considerable expansion of the navigation tree makes it especially difficult to view the relative locations of two different structures. For example, a user may search through a navigation tree for two particular folders. However, upon expansion of the tree, the folders become increasingly separated by an ever growing number of irrelevant nodes. As such, the substantial expansion of the navigation tree requires the user to either scroll up and down through the navigation tree to view the two relevant folders, or to open a second window in order to view one folder in each window. Moreover, such multi-level navigation requires the user to remember every parent structure, grandparent structure, etc. to efficiently navigate the tree. Thus, navigation quickly becomes increasingly tedious the deeper a desired folder or page is located in the navigation tree.
Additionally, current navigation systems only incorporate a single root. As a result, the navigation tree restricts the organization of a user's folders and other structures to a single representation. Such a restriction may pose substantial obstacles to efficiently viewing and navigating folders of comparable relevancy. In one example, a user may have limited space on each of his or her storage drives and is therefore forced to store his or her photographs on two separate drives. In known single root solutions, the user is forced to access both storage areas by expanding the navigation tree significantly at two different storage points. Such a method of navigation hinders viewing both sets of photographs simultaneously.
For at least the foregoing reasons, a method and system of enhancing the organization, accessibility and customizability of navigation controls is needed.